In various existing editors, there are many kinds of objects, such as headings, graphics, charts, drawing objects (for example, circles, rectangles, ellipses, lines, etc. in Microsoft Office, they are also named Auto Shapes), hyperlinks, OLE objects and so on. These objects can present rich document information to users.
A user who edits a document in an editor often needs to select one or more objects in the document to perform various functions on them. For instance, when the user selects an object, he or she can perform operations like deleting, duplicating, moving, resizing and editing on it. In many cases, the user wishes to select a group of objects and perform the same function on them simultaneously. In most existing graphic operating system and applications, a group of objects can be selected mainly in the following four ways.
The first method is that the user is allowed to click on a first object by using mouse, and then hold down the SHIFT or Ctrl key while clicking on another object. By such operations, the user can select more than one object.
The second method is that the user is allowed to select a group of adjacent objects by dragging mouse to form a rectangle selection box around the desired objects. Depending on the parameters of the specific program, the selected objects will include those that are contained entirely within the rectangle selection box or those that intersect the rectangle selection box.
The third method is that the user holds down the SHIFT key while using ARROW keys to move selection cursor. Thus, the objects in the selection region formed by the movement of the selection cursor are selected.
The forth method can provide two types of selection mark different in color or shape, which represent navigation mark and selection mark respectively. If the user selects only one object, the navigation mark is the same as the selection mark. When the user switches the operation focus to another object by pressing TAB key, the navigation mark is switched to this object too, but the selection mark keeps unmoved. When the user moves the operation focus to the desired object, he/she can press SHIFT and ENTER keys together to do the selection. Then the current selected objects will include the first object and the desired object. Another implementation of this method is to utilize the combination of CTRL, SHIFT, TAB, SPACE and ENTER keys to switch the navigation mark and the selection mark separately, and finish the selection after a series of complex keyboard operations.
When a disabled user uses the software, he or she usually needs Assistive Technology (AT) tools to obtain the information, which requires the software can be accessible. Software accessibility requires that all the User Interface (UI) elements should be accessed not only by mouse but also by keyboard only. By using the keyboard, such as TAB key, ARROW keys, function keys, etc., those disabled users, especially blind or low-vision users, can precisely navigate to the element in the document and then the AT tools can present the elements to the users.
Therefore, the above first, second and third methods are not compliant with the software accessibility requirements entirely. The first two methods must depend on the mouse, and thus the two methods are not compliant with the software accessibility requirements for disabled users, such as blind or low-vision users. The third method can only do the continuous selection although only keyboard is used. Moreover, the method depends on the text cursor and is only applied when the text cursor exists. Some objects which cannot be reached by the text cursor cannot be selected by this method. In some editors, the method can only select the texts and some graphics, but not all the objects. Since the third method cannot be applied to all the objects, it cannot be regarded as an effective method for selecting multiple objects.
Although the fourth method can use only keyboard to select multiple objects continuously or non-continuously, the operation is too complex. Moreover, this method has known shortcomings of its own.
Therefore, there is a need for a method for enabling the user to select multiple objects in a document by using keyboard only, which can be applied to most applications.